﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Jumpton.SFA.Server.Entity;
using System.Web.Services;
using Jumpton.SFA.Server.BusinessRule.System;

public partial class System_Assign_Permissions : PageBase
{
    #region 变量

    protected string DATA_PERMISSION = "";
    protected string FLAG = "";

    #endregion

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            DATA_PERMISSION = EnumResources.LoadJsonString(EnumType.Permissions);
            FLAG = EnumResources.LoadJsonString(EnumType.FLAG);
        }
    }

    /// <summary>
    /// 保存用户组数据
    /// </summary>
    /// <param name="d"></param>
    /// <param name="l"></param>
    /// <param name="c"></param>
    /// <param name="p"></param>
    /// <param name="f"></param>
    /// <param name="u"></param>
    /// <returns></returns>
    [WebMethod]
    public static string SaveGroup(int i, decimal d, string l, string c, decimal p, string f, decimal u)
    {
        Assign_Permissions ap = new Assign_Permissions();
        SYS_GROUPS group = null;
        if (i == -1)
        {
            group = new SYS_GROUPS();
            group.DOMAINID = d;
            group.CREATETIME = long.Parse(DateTime.Now.ToString("yyyyMMddhhmmss"));
        }
        else
            group = ap.LoadRow(i);

        if (d == -1)
            group.ACTIVE = false;
        else
        {
            group.ACTIVE = true;
            group.CODE = c;
            group.USERLEVEL = u;
            group.FLAG = f;
            group.DATAPERMISSION = p;
        }
        group.LAST_UPDATER = l;
        group.LAST_UPDATE_TIME = Jumpton.SFA.Server.BusinessRule.BusinessLogic.GetDateTimeLong(DateTime.Now);

        return ap.Group_Save(group);
    }

    [WebMethod]
    public static string SelectGroupDate(decimal d)
    {
        Assign_Permissions AP = new Assign_Permissions();
        AP.Domain_id = d;

        return AP.GetGroupDataString();
        //return "{\"rows\":[{\"ID\":1,\"c\":\"系统管理员\",\"p\":3,\"f\":\"SR\",\"u\":0},{\"ID\":2,\"c\":\"公司管理层\",\"p\":2,\"f\":\"SR\",\"u\":1},{\"ID\":3,\"c\":\"普通管理层\",\"p\":2,\"f\":\"SP\",\"u\":2},{\"ID\":4,\"c\":\"巡店督导\",\"p\":1,\"f\":\"SR\",\"u\":4}]}";
    }

    [WebMethod]
    public static string SelectDetailDate(decimal d, decimal g)
    {
        Assign_Permissions AP = new Assign_Permissions();
        AP.Domain_id = d;
        AP.GROUP_ID = g;

        return AP.GetTreeJsonString();
        //return "[{'id': 1000, 'name': '人员管理','state':'closed', 'children': [{'id': 1, 'name': '员工资料管理', 'o': ''},{'id': 28, 'name': '系统账号维护', 'o': ''},{'id': 86, 'name': '员工资料查看', 'o': ''}]},{'id': 1001, 'name': '产品管理','state':'closed', 'children': [{'id': 2, 'name': '仓库数据维护', 'o': ''},{'id': 9, 'name': '厂商维护', 'o': ''},{'id': 10, 'name': '品类维护', 'o': ''},{'id': 11, 'name': '品牌维护', 'o': ''},{'id': 12, 'name': '产品维护', 'o': ''},{'id': 50, 'name': '安全库存计算公式', 'o': ''},{'id': 68, 'name': '系列维护', 'o': ''}]},{'id': 1002, 'name': '客户管理','state':'closed', 'children': [{'id': 5, 'name': '经销商维护', 'o': ''},{'id': 8, 'name': '门店维护', 'o': ''},{'id': 14, 'name': '客户分销列表', 'o': ''},{'id': 79, 'name': '查询门店', 'o': ''},{'id': 82, 'name': '供应商维护', 'o': ''},{'id': 108, 'name': '税率维护', 'o': ''},{'id': 124, 'name': '车辆管理', 'o': ''}]},{'id': 1003, 'name': '基础数据','state':'closed', 'children': [{'id': 16, 'name': '税率维护', 'o': ''},{'id': 38, 'name': '付款条款', 'o': ''},{'id': 40, 'name': '折扣维护', 'o': ''}]},{'id': 1004, 'name': '覆盖管理','state':'closed', 'children': [{'id': 18, 'name': '巡店督导线路维护', 'o': ''},{'id': 35, 'name': '客户转移', 'o': ''},{'id': 37, 'name': '拜访历史', 'o': ''},{'id': 54, 'name': '照片回顾', 'o': ''},{'id': 56, 'name': '促销指令', 'o': ''},{'id': 57, 'name': '促销执行回顾', 'o': ''},{'id': 70, 'name': '拜访线路跟踪', 'o': ''},{'id': 109, 'name': '添加拜访记录', 'o': ''}]},{'id': 1005, 'name': '订单管理','state':'closed', 'children': [{'id': 19, 'name': '订单确认', 'o': ''},{'id': 20, 'name': '订单录入', 'o': ''},{'id': 47, 'name': '订单导出', 'o': ''},{'id': 48, 'name': '订单查询', 'o': ''},{'id': 73, 'name': '销售订单打印', 'o': ''},{'id': 74, 'name': '订单查看', 'o': ''},{'id': 83, 'name': '送货单打印', 'o': ''},{'id': 126, 'name': '订单分配', 'o': ''}]},{'id': 1006, 'name': '系统管理','state':'closed', 'children': [{'id': 27, 'name': '域维护', 'o': ''},{'id': 30, 'name': '用户组维护', 'o': ''},{'id': 32, 'name': '密码维护', 'o': ''},{'id': 39, 'name': '时间选项设置', 'o': ''},{'id': 41, 'name': '常规选项设置', 'o': ''},{'id': 58, 'name': '多域数据管理', 'o': ''},{'id': 64, 'name': '系统列表维护', 'o': ''},{'id': 72, 'name': '部门维护', 'o': ''},{'id': 76, 'name': '会计期管理', 'o': ''},{'id': 87, 'name': '系统配置', 'o': ''},{'id': 104, 'name': '行政与组织挂接', 'o': ''},{'id': 105, 'name': '行政结构维护', 'o': ''},{'id': 107, 'name': '系统日志', 'o': ''},{'id': 123, 'name': '拜访类型维护', 'o': ''},{'id': 125, 'name': '桌面模块设置', 'o': ''},{'id': 133, 'name': 'CPR信息维护', 'o': ''}]},{'id': 1007, 'name': '促销管理','state':'closed', 'children': [{'id': 55, 'name': '促销维护', 'o': ''},{'id': 77, 'name': '促销类型', 'o': ''},{'id': 81, 'name': '促销查看', 'o': ''},{'id': 136, 'name': '促销公式', 'o': ''}]},{'id': 1008, 'name': '资产管理','state':'closed', 'children': [{'id': 59, 'name': '助销指令', 'o': ''}]},{'id': 1009, 'name': '目标管理','state':'closed', 'children': [{'id': 65, 'name': '目标明细维护', 'o': ''},{'id': 127, 'name': '目标管理', 'o': ''},{'id': 134, 'name': '目标明细查看', 'o': ''}]},{'id': 1010, 'name': '监督核查','state':'closed', 'children': [{'id': 75, 'name': '照片核查', 'o': ''},{'id': 78, 'name': '短信发送', 'o': ''},{'id': 84, 'name': '短信查看', 'o': ''}]},{'id': 1011, 'name': '报表管理','state':'closed', 'children': [{'id': 90, 'name': '货架占比(组织)', 'o': ''},{'id': 91, 'name': '货架占比(行政)', 'o': ''},{'id': 92, 'name': '销售分析统计', 'o': ''},{'id': 93, 'name': '分销趋势图', 'o': ''},{'id': 94, 'name': '分销(行政)', 'o': ''},{'id': 95, 'name': '价格符合率(组织)', 'o': ''},{'id': 96, 'name': '价格符合率(行政)', 'o': ''},{'id': 97, 'name': '门店详细信息', 'o': ''},{'id': 98, 'name': '门店有效率', 'o': ''},{'id': 99, 'name': '拜访趋势图(组织)', 'o': ''},{'id': 100, 'name': '拜访达成率', 'o': ''},{'id': 102, 'name': '拜访趋势图(业代)', 'o': ''},{'id': 106, 'name': '目标达成率', 'o': ''},{'id': 132, 'name': '图片报表', 'o': ''}]},{'id': 1012, 'name': '手机端功能','state':'closed', 'children': [{'id': 110, 'name': '今日运输', 'o': ''},{'id': 111, 'name': '今日拜访', 'o': ''},{'id': 112, 'name': '客户资料', 'o': ''},{'id': 113, 'name': '业绩版', 'o': ''},{'id': 114, 'name': '消息', 'o': ''},{'id': 115, 'name': '历史拜访', 'o': ''},{'id': 116, 'name': '线路管理', 'o': ''},{'id': 117, 'name': '订单追踪', 'o': ''},{'id': 119, 'name': '同步', 'o': ''},{'id': 120, 'name': '退出', 'o': ''}]},{'id': 1013, 'name': '消息管理','state':'closed', 'children': [{'id': 121, 'name': '消息查看', 'o': ''},{'id': 122, 'name': '消息管理', 'o': ''}]},{'id': 1014, 'name': '指标管理','state':'closed', 'children': [{'id': 128, 'name': '铺货数据查看', 'o': ''},{'id': 129, 'name': '指标组维护', 'o': ''},{'id': 131, 'name': '指标明细维护', 'o': ''},{'id': 137, 'name': '分销数据查看', 'o': ''}]}]";
    }

    [WebMethod]
    public static string SaveOptionData(decimal d, int g, string l, string m, string o)
    {
        Assign_Permissions AP = new Assign_Permissions();

        return AP.SaveGroupDetail(g, d, l, m, o) > 0 ? "1" : "0";
    }
}